Digital broadcasting services using broadcast satellites and communication satellites have now started, and demand for digital recording and playback devices enabling time-shift viewing of digital broadcasts is growing. Existing digital recording and playback systems such as taught in Japanese Unexamined Patent Appl. Pub. 2001-218143 filter and extract the desired program from the broadcast stream for recording. Referred to as simply a “digital recorder” below, this conventional digital recording and playback device is described next.
FIG. 8 is a block diagram showing a conventional digital broadcast reception system having a recording/playback function as taught in Japanese Unexamined Patent Appl. Pub. 2001-218143.
As shown in FIG. 8, the output of the reception demodulator 101 is connected to the input to packet filter 102, one input to the selector switch 105, and the input to the data table extractor 106. The output of the packet filter 102 is connected to the input to the data table substitution unit 103. The output of the data table substitution unit 103 is connected to the input to the recording/playback device 104. The output of the recording/playback device 104 is connected to the other input to the selector switch 105. The output of the data table extractor 106 is connected to an input to the control microprocessor 108. The outputs of the control microprocessor 108 are connected to the reception demodulator 101, packet filter 102, data table generator 107, recording/playback device 104, demultiplexer 110, and AV decoder 111. The output of the data table generator 107 is connected to the input to the data table substitution unit 103. The output of the selector switch 105 is connected to the input to the demultiplexer 110. The output of the demultiplexer 110 is connected to the input to the AV decoder 111. The output of the AV decoder 111 is connected to the input to the monitor 112. The output of the user interface 109 is connected to an input to the control microprocessor 108.
Operation of this conventional digital broadcast reception system with a recording/playback function is described next.
The control microprocessor 108 first sets the selector switch 105 to the reception demodulator 101 side. The reception demodulator 101 demodulates the received digital broadcast signal, and outputs an MPEG-TS (MPEG transport stream) packet stream. This packet stream contains packets for carrying program video data and audio data (“AV transport packets” below), and packets for carrying data tables (“data table transport packets” below). The demultiplexer 110 and AV decoder 111 process the packet stream as instructed by the control microprocessor 108, and construct an electronic program guide (EPG) transmitted from the broadcast station at that time into a format that can be processed by the control microprocessor 108. The electronic program guide can then be presented to the user as graphical information displayed on the monitor 112, or through the user interface 109.
The user then refers to the presented program guide and selects the program desired for recording from among the multiple program options. The selected program is not limited to programs currently being broadcast, and could be a program scheduled for future broadcasting. When a program scheduled for future broadcasting is to be recorded and the control microprocessor 108 knows what the current time is, the control microprocessor 108 executes an operation such as described below when the scheduled broadcasting time comes.
This program recording operation is described next. Using the user interface 109, the user tells the control microprocessor 108 what program to record by, for example, specifying the program number. These program numbers are one of the fields in the program guide data table, which includes program broadcast times and the program matrix, and the control microprocessor 108 can therefore use the program_number to identify a unique program.
The packet stream output from the reception demodulator 101 at this time is input to the packet filter 102 and data table extractor 106. The data table extractor 106 extracts and inputs the data tables from the input packet stream to the control microprocessor 108. The control microprocessor 108 determines if the program to record is currently being broadcast based on the input data table. This specific operation is described next.
First, the control microprocessor 108 references the event information section of the Event Information Table (EIT) containing detailed information about each program to find the program_number and identify the program. The control microprocessor 108 then reads the running_status value for that program in the Event Information Table, and thus determines if the recording program is currently being broadcast. If the recording program selected by the user is a program scheduled for future broadcasting, then several seconds to several minutes before the program is to start the control microprocessor 108 confirms whether the selected program will be broadcast as scheduled to both ensure that the program will be recorded from the beginning and prevent recording errors.
If transmission of the scheduled recording program is confirmed, the control microprocessor 108 sends the PID value of the packets to be passed to the packet filter 102. This PID value is the PID of the packets carrying video data for the recording program, the PID of the packets carrying the audio data for the recording program, the PID of the packets carrying other program related information as instructed, and the PID of the packets carrying the PSI (Program Specific Information) table containing information about the packets belonging to each program contained in the stream. Packets (such as null packets) identified as not needing recording do not need to pass the packet filter 102, and the PID for those packets is therefore not passed by the control microprocessor 108 to the packet filter 102. If the recording capacity of the recording medium used by the recording/playback device 104 is sufficient, the packet filter 102 could also be told to pass video data and other information relating to programs other than the recording program. If the video data carrier packets contain multiple hierarchically coded video packets, this will be indicated in the PMT (Program Map Table), and the control microprocessor 108 can therefore determine whether to control multiple video streams as instructed by the user.
The filtering operation of the packet filter 102 results in dropped packets in the packet stream. The content of the PSI table when it is output from the reception demodulator 101 therefore does not match the new packet stream output from the packet filter 102. The data table generator 107 therefore generates a new PSI table corresponding to the new packet stream as instructed by the control microprocessor 108. Multiple programs are contained in the packet stream from the reception demodulator 101, and this applies to when only one of those programs is to be recorded.
It should be noted that the Network Information Table (NIT) is optional according to the MPEG standard, and it is therefore not always necessary to pass and record the Network Information Table through the packet filter 102. Even if the Network Information Table is filtered by the packet filter 102, the lack of the Network Information Table has little effect on other devices. However, the data table generator 107 could include the program_number 0, that is, the Network Information Table, in the recording program information, and the Network Information Table could be inserted to the packet stream by the data table substitution unit 103. This affords compatibility with digital information processes that require the Network Information Table.
The new PSI table generated by the data table generator 107 is input to the data table substitution unit 103, and thereby substituted for the PSI table contained in the packet stream that passed the packet filter 102. This assures that the PSI table matches the packet stream output from the packet filter 102. In addition, data for descriptors relating to programs other than the recording program is deleted from the new Program Association Table (PAT), and the total amount of data in the packet stream is therefore compressed. The number of packet is also reduced as a result deleting descriptor data.
The transport packets contain a continuity_counter that increment one in each of plural packets having the same PID value. When packet dropping occurs as noted above, this continuity_counter is controlled by the data table generator 107 so that the appropriate value is assigned to each packet.
The new packet stream thus generated is sent to the recording/playback device 104 and recorded to a data storage medium in the recording/playback device 104. A separate index area is provided from the area for continuously recording the stream, and the recorded program can be played back by recording where the program was recorded to the recording medium (i.e., the address information) in this index area.
If the recording medium is a fixed disk medium or semiconductor memory, this index area can be anywhere outside the continuous recording area to which the program data is recorded. If the recording medium is a tape medium, the index area is any area (such as the beginning of the tape) outside the contiguous program data storage area, including an electronic memory device built in to the tape cassette of a digital video cassette. Furthermore, if a tape medium is used, random access performance can be improved with the tape by repeatedly recording the program address information between program data segments using a data format that can be easily distinguished from the transport packets carrying the program data.
Because this recording operation is done without using the signal lines connecting the reception demodulator 101, selector switch 105, and demultiplexer 110, the desired programs can be recorded while the user is viewing a different program. In order to process multiple programs received over different channels, however, the reception demodulator 101 must be able to process multiple streams received through multiple transponders. As a result, the reception demodulator 101 must therefore have a multichannel reception capability and a distribution function for distributing the multiple transponder streams to the data table extractor 106 and demultiplexer 110 sides.
The operation for playing the recorded program back is described next. When a program is recorded as instructed by the user, the control microprocessor 108 updates the list of recorded programs graphically displayed on the monitor 112, for example. The user can then view this list to select the recorded program for playback.
The user then uses the user interface 109 to tell the control microprocessor 108 which program to play back. The control microprocessor 108 then refers to the program data address information written to the index area, and starts to read the desired program data from the storage medium of the recording/playback device 104. The control microprocessor 108 also switches the selector switch 105 to the recording/playback device 104 side. The playback stream read from the storage medium thus passes the selector switch 105 and is sent to the demultiplexer 110 and AV decoder 111. The control microprocessor 108 controls the demultiplexer 110 and AV decoder 111 to present the reproduced program on the monitor 112.
The digital information passed to the demultiplexer 110 during program playback includes such program information as the PSI table and the video and audio data, but does not include the electronic program guide and other related information. When compatibility with other systems that process this related information with the program information during normal digital broadcast reception is considered, the control microprocessor 108 stops processing this related information other than the program information during playback of a recorded program so that dropping this related information does not create a problem with system operation.
By thus providing a mechanism for replacing the PSI table, this conventional digital broadcast reception system can record only the desired programs to a recording/playback device while maintaining full MPEG compatibility, and the recording efficiency of the recording/playback device 104 can thus be maintained as more fully described in Japanese Unexamined Patent Appl. Pub. 2001-218143.
While the prior art thus increases the recording efficiency by replacing only the packets for data table transfer, and reconstructing and recording the desired program from a broadcast packet stream containing multiple programs to a recording/playback drive, the AV data packets that predominately control the recording efficiency are simply recycled directly from the original packet stream.
Digital broadcasts also carry program rating data inserted to the broadcast packet stream so that a parental control system enabling program viewing to be controlled according to the viewer's age, or more specifically the program ratings. This rating system works in conjunction with the receiver. It is therefore desirable for this parent control system to also work when playing back programs recorded from such a broadcast. However, decoding digital broadcasts and then re-encoding the program for digital recording often loses detailed program information, including this parental control information, contained in the original digital broadcast.